#ifndef _PARALLEL_H
#define _PARALLEL_H

#include <CSPProcess.h>
#include <cstdarg>
#include <vector>
#include <ProcessTerminationEvent.h>

using namespace std;

class Parallel
{
	private:
		vector<CSPProcess*> procs;
		int has_run;
		void Failure();
		ProcessTerminationEvent *event;


	public:
		Parallel(CSPProcess *p1, ...);
		void Add(CSPProcess *p);
		~Parallel(){}
		int Run();
		vector<CSPProcess*> *GetProcs(){return &procs;}
};

#endif
